সিএসএস গ্রিড হল একটি শক্তিশালী লেআউট সিস্টেম, যা একটি ওয়েব পেজের উপাদানগুলিকে সারি (rows) এবং কলাম (columns)-এ সাজানোর জন্য ব্যবহৃত হয়। এটি 2D লেআউট তৈরিতে কার্যকর, যা ফ্লেক্সবক্সের একমাত্র দিক (1D) লেআউটের তুলনায় অনেক বেশি ক্ষমতাশালী। গ্রিড ব্যবহার করে সহজেই রেস্পন্সিভ এবং জটিল লেআউট তৈরি করা যায়।
গ্রিড কন্টেইনার তৈরি করতে display: grid;
প্রোপার্টি ব্যবহার করা হয়। এটি গ্রিড লেআউট সক্রিয় করে।
.container {
display: grid;
}
গ্রিড কন্টেইনারের প্রতিটি চাইল্ড উপাদানকে গ্রিড আইটেম বলা হয়।
<div class="container">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
</div>
গ্রিড কন্টেইনারে কলামের আকার নির্ধারণ করে।
.container {
display: grid;
grid-template-columns: 100px 200px 100px; /* তিনটি কলাম */
}
গ্রিড কন্টেইনারে সারির আকার নির্ধারণ করে।
.container {
display: grid;
grid-template-rows: 100px 150px; /* দুটি সারি */
}
গ্রিড আইটেমগুলোর মধ্যে ফাঁকা নির্ধারণ করে।
.container {
display: grid;
grid-gap: 10px;
}
গ্রিড লাইনের সাহায্যে আইটেমের পজিশন নির্ধারণ করা যায়।
.item {
grid-column: 1 / 3; /* প্রথম থেকে তৃতীয় কলাম পর্যন্ত */
grid-row: 1 / 2; /* প্রথম সারি */
}
<div class="container">
<div class="header">Header</div>
<div class="sidebar">Sidebar</div>
<div class="main">Main Content</div>
<div class="footer">Footer</div>
</div>
<style>
.container {
display: grid;
grid-template-columns: 1fr 2fr;
grid-template-rows: auto auto;
grid-gap: 10px;
}
.header {
grid-column: 1 / 3;
}
.sidebar {
grid-column: 1 / 2;
}
.main {
grid-column: 2 / 3;
}
.footer {
grid-column: 1 / 3;
}
</style>
বৈশিষ্ট্য | সিএসএস গ্রিড | ফ্লেক্সবক্স |
---|---|---|
লেআউট প্রক্রিয়া | 2D (সারি এবং কলাম) | 1D (সারি বা কলাম) |
জটিল লেআউট | সহজে জটিল লেআউট তৈরি করা যায় | সীমিত |
রেস্পন্সিভ ব্রেকপয়েন্ট | সহজে নির্ধারণ করা যায় | তুলনামূলক জটিল |